查看原文
其他

试试这款针对JAVA应用的开源防火墙!

TJ TJ君 2021-12-11

大家好,我是TJ

一个励志推荐10000款开源项目与工具的程序员


很多小伙伴问TJ君,现在开源项目看的越来越多也用的越来越多,还真有点担心!

担心什么?自然是代码项目中有意无意的被别人加入了各种后台访问代码。

这万一一不小心泄露了自己的重要信息可怎么办?

要TJ君说呢,首先肯定是装各种各样的防火墙进行防御,但是市面上的一般防火墙也不是万能的,所以今天TJ君要给大家介绍一个开源的、针对JAVA程序的防火墙项目:

ja-netfilter

如何添加

首先下载ja-netfilter jar包,地址在文末。

根据自己的实际路径按如下要求添加参数:

-javaagent:/absolute/path/to/ja-netfilter.jar

然后编辑自己的janf_config.txt文件,jar包会自动按照如下优先顺序进行搜索匹配:

  • 作为-javaagent的参数传递 ,例如: -javaagent:/absolute/path/to/ja-netfilter.jar=/home/neo/downloads/janf_config.txt

  • 环境变量中的文件路径: JANF_CONFIG

  • java启动属性中的文件路径: janf.config.,例如: java -Djanf.config="/home/neo/downloads/janf_config.txt"

  • 有些应用程序支持JVM选项文件,可以将其添加为JVM选项文件的一行,例如: -Djanf.config="/home/neo/downloads/janf_config.txt"

  • 文件路径与ja-netfilter.jar位于同一目录中,无需额外配置(TJ君建议用这个,最简单方便

  • 主目录中的文件路径,例如: .janf_config.txt. eg: /home/neo/.janf_config.txt

  • 主目录中名为.config的子目录中的文件路径,例如: /home/neo/.config/janf_config.txt

  • 主目录中名为.local/etc的子目录中的文件路径,例如: /home/neo/.local/ect/janf_config.txt

  • 名为/usr/local/etc目录中的文件路径,例如: /usr/local/etc/janf_config.txt

  • 目录中的文件路径,例如: /etc. eg: /etc/janf_config.txt

然后运行应用程序就可以了。

配置文件参数

小伙伴肯定要问了,那这个janf_config.txt文件,应该怎么编辑呢,其实不难,总的说明如下:

[ABC]
# for the specified plugin called "ABC"

[URL]
EQUAL,https://someurl

[DNS]
EQUAL,somedomain

# EQUAL       Use `equals` to compare
# EQUAL_IC    Use `equals` to compare, ignore case
# KEYWORD     Use `contains` to compare
# KEYWORD_IC  Use `contains` to compare, ignore case
# PREFIX      Use `startsWith` to compare
# PREFIX_IC   Use `startsWith` to compare, ignore case
# SUFFIX      Use `endsWith` to compare
# SUFFIX_IC   Use `endsWith` to compare, ignore case
# REGEXP      Use regular expressions to match

还不明白?举个例子,如果我们想阻断市面上常见的DBEaver激活验证,可以这样写:

[URL]
PREFIX,https://dbeaver.com/lmp/checkLicense

是不是一下子就醍醐灌顶、茅厕顿开看明白了呢?

调试

默认情况下,ja-netfilter不会输出调试日志,如果有这个需要的话,可以添加环境变量JANF_DEBUG=1开始启用,也可以添加系统属性-Djanf.debug=1启用。

总结

最后提一点,这款项目是基于javaagent编写的,所以基于java的程序都能够适用,项目作者也表示欢迎各位程序员小伙伴进行二次开发,让它变成更加有趣的插件,所以小伙伴还在等什么,赶紧来试一试这款防火墙吧!开源地址如下:

点击下方卡片,关注公众号“TJ君

回复“netfilter”,获取仓库地址

关注我,每天了解一个牛x、好用、有趣的东东

往期推荐

一款美轮美奂的JavaScript 小项目

一款插件如何让Github变得不一样?

三款Github插件,让你浏览Github事半功倍

免费开源、操作简洁、功能完善、暗黑风格,还有什么理由拒绝这款SSH工具?

Typora开始收费,介绍几款免费的MarkDown编辑器

开源mybatis分页插件,省时省力



: . Video Mini Program Like ,轻点两下取消赞 Wow ,轻点两下取消在看

您可能也对以下帖子感兴趣

文章有问题?点此查看未经处理的缓存